package com.lance.answer.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

@NoArgsConstructor
@Data
@AllArgsConstructor
public class ScoreInfo {


    @JsonProperty("code")
    private String code;
    @JsonProperty("content")
    private ContentDTO content;
    @JsonProperty("ts")
    private Long ts;

    @NoArgsConstructor
    @Data
    public static class ContentDTO {
        @JsonProperty("total")
        private Integer total;
        @JsonProperty("pages")
        private Integer pages;
        @JsonProperty("items")
        private List<ItemsDTO> items;

        @NoArgsConstructor
        @Data
        public static class ItemsDTO {
            @JsonProperty("id")
            private Integer id;
            @JsonProperty("name")
            private String name;
            @JsonProperty("type")
            private Integer type;
            @JsonProperty("academyId")
            private Integer academyId;
            @JsonProperty("openCourseId")
            private Integer openCourseId;
            @JsonProperty("answerTimes")
            private Integer answerTimes;
            @JsonProperty("timesShowAnswer")
            private Integer timesShowAnswer;
            @JsonProperty("totalScore")
            private Integer totalScore;
            @JsonProperty("paperUid")
            private String paperUid;
            @JsonProperty("hasSubjective")
            private Integer hasSubjective;
            @JsonProperty("scoreRatio")
            private Integer scoreRatio;
            @JsonProperty("limitDuration")
            private Integer limitDuration;
            @JsonProperty("startTime")
            private Long startTime;
            @JsonProperty("endTime")
            private Long endTime;
            @JsonProperty("lastAnswerId")
            private Integer lastAnswerId;
            @JsonProperty("lastTime")
            private Integer lastTime;
            @JsonProperty("lastStatus")
            private Integer lastStatus;
            @JsonProperty("sumScore")
            private Integer sumScore;
            @JsonProperty("answerCreateTime")
            private Long answerCreateTime;
            @JsonProperty("scoreStatus")
            private Integer scoreStatus;
            @JsonProperty("startAnswerTime")
            private Long startAnswerTime;
        }
    }
}
